﻿// 麻省理工学院许可证
//
// 版权所有 (c) 2021-2023 zuohuaijun，大名科技（天津）有限公司  联系电话/微信：18020030720  QQ：515096995
//
// 特此免费授予获得本软件的任何人以处理本软件的权利，但须遵守以下条件：在所有副本或重要部分的软件中必须包括上述版权声明和本许可声明。
//
// 软件按“原样”提供，不提供任何形式的明示或暗示的保证，包括但不限于对适销性、适用性和非侵权的保证。
// 在任何情况下，作者或版权持有人均不对任何索赔、损害或其他责任负责，无论是因合同、侵权或其他方式引起的，与软件或其使用或其他交易有关。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Jim.K3Cloud;

public class K3CloudObjectData
{
    /// <summary>
    /// 对象Id
    /// </summary>
    public string Id { get; set; }
    /// <summary>
    /// 名称
    /// </summary>
    [JsonConverter(typeof(LocaleValueConverter))]
    public string Name { get; set; }
    /// <summary>
    /// 类型
    /// </summary>
    public K3CloudModelType ModelTypeId { get; set; }
    /// <summary>
    /// 类型名称
    /// </summary>
    public string ModelTypeName
    {
        get
        {
            switch (ModelTypeId)
            {
                case K3CloudModelType.Bill: return "单据";
                case K3CloudModelType.BaseData: return "基础资料";
                case K3CloudModelType.DynamicForm: return "动态表单";
                case K3CloudModelType.Filter: return "过滤条件框";
                case K3CloudModelType.WorkFlow: return "工作流";
                case K3CloudModelType.IBP: return "工作流";
                case K3CloudModelType.SysParam: return "系统参数";
                case K3CloudModelType.NotePrint: return "套打";
                case K3CloudModelType.RelatedFlex: return "弹性域";
                case K3CloudModelType.BusinessFlowVersion: return "业务流程图版本";
                case K3CloudModelType.BusinessFlow: return "业务流程图设计";
                case K3CloudModelType.WriteBack: return "反写规则";
                case K3CloudModelType.ConvertRule: return "转换规则";
                case K3CloudModelType.WNReport: return "万能报表";
                case K3CloudModelType.SysReport: return "简单帐表";
                default:
                    return nameof(K3CloudModelType);
            };
        }
    }
    public int ModelTypeSubId { get; set; }
    /// <summary>
    /// 开发类型
    /// </summary>
    public int DevType { get; set; }
    public string BaseObjectIdId { get; set; }
    /// <summary>
    /// 基对象
    /// </summary>
    public K3CloudSimpleObject BaseObjectId { get; set; }
    /// <summary>
    /// 引用路径
    /// </summary>
    public string InheritPath { get; set; }
    /// <summary>
    /// 子模块Id
    /// </summary>
    public string SubSystemIdId { get; set; }
    /// <summary>
    /// 子模块
    /// </summary>
    public K3CloudSubSystemData SubSystemId { get; set; }
    /// <summary>
    /// 包Id
    /// </summary>
    public string PackageId { get; set; }
    /// <summary>
    /// 是否模板
    /// </summary>
    public bool Istemplate { get; set; }
    /// <summary>
    /// 排序
    /// </summary>
    public int Seq { get; set; }
    public string Fmodifydate { get; set; }
}


public class K3CloudSimpleObject
{
    public string Id { get; set; }
    [JsonConverter(typeof(LocaleValueConverter))]
    public string Name { get; set; }
}